gboolean draw_border_internal : 1;
StTooltip *tooltip;
+
+ StTextDirection direction;
};
/**
st_widget_recompute_style (widget, NULL);
}
+static StTextDirection default_direction = ST_TEXT_DIRECTION_LTR;
+
+StTextDirection
+st_widget_get_default_direction (void)
+{
+ return default_direction;
+}
+
+void
+st_widget_set_default_direction (StTextDirection dir)
+{
+ g_return_if_fail (dir != ST_TEXT_DIRECTION_NONE);
+
+ default_direction = dir;
+}
+
+StTextDirection
+st_widget_get_direction (StWidget *self)
+{
+ g_return_val_if_fail (ST_IS_WIDGET (self), ST_TEXT_DIRECTION_LTR);
+
+ if (self->priv->direction != ST_TEXT_DIRECTION_NONE)
+ return self->priv->direction;
+ else
+ return default_direction;
+}
+
+void
+st_widget_set_direction (StWidget *self, StTextDirection dir)
+{
+ g_return_if_fail (ST_IS_WIDGET (self));
+ self->priv->direction = dir;
+}
+
/**
* st_widget_get_border_image:
* @actor: A #StWidget
G_BEGIN_DECLS
+typedef enum {
+ ST_TEXT_DIRECTION_NONE,
+ ST_TEXT_DIRECTION_LTR,
+ ST_TEXT_DIRECTION_RTL
+} StTextDirection;
+
#define ST_TYPE_WIDGET (st_widget_get_type ())
#define ST_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ST_TYPE_WIDGET, StWidget))
#define ST_IS_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ST_TYPE_WIDGET))
void st_widget_ensure_style (StWidget *widget);
+StTextDirection st_widget_get_default_direction (void);
+void st_widget_set_default_direction (StTextDirection dir);
+
+StTextDirection st_widget_get_direction (StWidget *self);
+void st_widget_set_direction (StWidget *self, StTextDirection dir);
/* Only to be used by sub-classes of StWidget */
void st_widget_style_changed (StWidget *widget);